﻿using System;

namespace _91_定义索引器_集合
{
    class Program
    {
        static void Main(string[] args)
        {
            MySample ssss = new MySample();

            //通过索引器，向实例内部byte数组的元素赋值
            ssss[0] = 209;
            ssss[1] = 39;
            ssss[2] = 122;
            ssss[9] = 60;
            ssss[5] = 61;

            ssss.PrintAll();

        }
    }

    //声明一个类，里面包含一个byte数组，外部代码可以通过类公开的索引器与byte数组交互，PrintAll方法用于向控制台输出byte数组中的所有元素
    public class MySample
    {
        private byte[] _data = new byte[10];

        public byte this[int index]
        {
            get
            {
                if (index < 0 || index >= _data.Length)
                    return 0;
                return _data[index];
            }
            set
            {
                if (index >= 0 || index < _data.Length)
                    _data[index] = value;
            }
        }

        public void PrintAll()
        {
            string mag = string.Join("、", _data);

            Console.WriteLine($"元素列表：\n{mag}\n\n");
        }

    }



}
